#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;
//class A
//{
//public:
//	//A(int aa,char bb,float cc)
//	//{
//	//	_aa = aa;
//	//	_bb = bb;
//	//	_cc = cc;
//	//}
//private:
//	int _aa;
//	char _bb;
//	float _cc;
//};
//class date
//{
//public:
//	date(int year, int month, int day, int i)
//		: _a(i)
//		, _b(10)
//		//, _aa(10,'a',10)
//	{
//		_year = year;
//		_month = month;
//		_day = day;
//	}
//private:
//	int _year;
//	int _month;
//	int _day;
//	int& _a;
//	const int _b;
//	A _aa;
//};
//int main()
//{
//	int i = 521;
//	date d1(2023, 4, 1,i);
//	//date d2(d1);
//	return 0;
//}
//class A
//{
//public:
//	A(int a)
//		:_a1(a)
//		, _a2(_a1)
//	{}
//
//	void Print() {
//		cout << _a1 << " " << _a2 << endl;
//	}
//private:
//	int _a1;
//	int _a2;
//	
//};
//int main() {
//	A aa(1);
//	aa.Print();
//}
class A
{
public:
A(int a=1) 
{

	++_scount;
}
A(const A & t) {
	++_scount;
}
~A() 
{
	--_scount; 
}
static int GetACount() 
{
	return _scount;
}
private:
	int _a;
	static int _scount;
};
int A::_scount = 0;
void TestA()
{
	cout << A::GetACount() << endl;
	A a1;
	A q1;
	A a2=1;
	A a3(a1);
	cout << A::GetACount() << endl;
}
int main()
{
	TestA();
	return 0;
}